What Test Oracle Should I Use for Effective GUI Testing?

نویسندگان

  • Atif M. Memon
  • Ishan Banerjee
  • Adithya Nagarajan
چکیده

Test designers widely believe that the overall effectiveness and cost of software testing depends largely on the type and number of test cases executed on the software. In this paper we show that the test oracle used during testing also contributes significantly to test effectiveness and cost. A test oracle is a mechanism that determines whether a software executed correctly for a test case. We define a test oracle to contain two essential parts: oracle information that represents expected output, and an oracle procedure that compares the oracle information with the actual output. By varying the level of detail of oracle information and changing the oracle procedure, a test designer can create different types of test oracles. We design 11 types of test oracles and empirically compare them on four software systems. We seed faults in each software to create 100 faulty versions, execute 600 test cases on each version, for all 11 types of oracles. In all, we report results of 660,000 test runs on each software. We show (1) the time and space requirements of the oracles, (2) that faults are detected early in the testing process when using detailed oracle information and complex oracle procedures, although at a higher cost per test case, and (3) that employing expensive oracles results in detecting a large number of faults using relatively smaller number of test cases.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Comprehensive Framework for Testing Graphical User Interfaces

The widespread recognition of the usefulness of graphical user interfaces GUIs has established their importance as critical components of today's software. Although the use of GUIs continues to grow, GUI testing has remained a neglected research area. Since GUIs have c haracteristics that are diierent from those of conventional software, such as user events for input and graphical output, techn...

متن کامل

DART: A Framework for Regression Testing "Nightly/daily Builds" of GUI Applications

“Nightly/daily building and smoke testing” have become widespread since they often reveal bugs early in the software development process. During these builds, software is compiled, linked, and (re)tested with the goal of validating its basic functionality. Although successful for conventional software, smoke tests are difficult to develop and automatically rerun for software that has a graphica...

متن کامل

Automating regression testing for evolving GUI software

With the widespread deployment of broadband connections worldwide, software development and maintenance are increasingly being done by multiple engineers, often working around-theclock to maximize code churn rates. To ensure rapid quality assurance of such software, techniques such as “nightly/daily building and smoke testing” have become widespread since they often reveal bugs early in the sof...

متن کامل

An event-flow model of GUI-based applications for testing

Graphical user interfaces (GUIs) are by far the most popular means used to interact with today’s software. The functional correctness of a GUI is required to ensure the safety, robustness and usability of an entire software system. GUI testing techniques used in practice are resource intensive; model-based automated techniques are rarely employed. A key reason for reluctance in adoption of mode...

متن کامل

Security testing of session initiation protocol implementations

The mechanisms which enable the vast majority of computer attacks are based on design and programming errors in networked applications. The growing use of voice over IP (VOIP) phone technology makes these phone applications potential targets. We present a tool to perform security testing of VOIP applications to identify security vulnerabilities which can be exploited by an attacker. Session Ini...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003